package smurf.view;

import java.awt.Graphics;
import javax.swing.ImageIcon;

/**
 * NavigationPanel defines the container for the application navigation menu
 * 
 * @author Bishan Kumar Madhoo <bishan.madhoo@idsoft.mu>
 * @version 1.0
 */
public class NavigationPanel extends javax.swing.JPanel {

    /**
     * NavigationPanel default constructor
     */
    public NavigationPanel() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form. WARNING: Do NOT modify this code. The
     * content of this method is always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        upperButtonsPanel = new javax.swing.JPanel();
        parameterButton = new javax.swing.JToggleButton();
        rubisButton = new javax.swing.JToggleButton();
        helpButton = new javax.swing.JToggleButton();
        logoPanel = new javax.swing.JPanel() {

            /**
            * Paint the contents of the panel
            *
            * @param g Panel graphics object
            */
            @Override
            public void paintComponent(Graphics g)
            {
                // Call the parent object paint component function
                super.paintComponent(g);

                // Logo image
                ImageIcon logoIcon = new ImageIcon(getClass().getResource("/smurf/view/logoSmurf_petit.png"));

                // Draw the application logo
                g.drawImage(logoIcon.getImage(), 16, 16, null);
            }
        };

        setMaximumSize(new java.awt.Dimension(128, 2147483647));
        setMinimumSize(new java.awt.Dimension(128, 0));
        setPreferredSize(new java.awt.Dimension(128, 668));
        setLayout(new java.awt.BorderLayout(16, 16));

        upperButtonsPanel.setMaximumSize(new java.awt.Dimension(128, 304));
        upperButtonsPanel.setMinimumSize(new java.awt.Dimension(128, 304));
        upperButtonsPanel.setPreferredSize(new java.awt.Dimension(128, 368));
        upperButtonsPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

        parameterButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/config_def.png"))); // NOI18N
        parameterButton.setText("Paramétrage");
        parameterButton.setActionCommand("CONFIG");
        parameterButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
        parameterButton.setBorderPainted(false);
        parameterButton.setContentAreaFilled(false);
        parameterButton.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
        parameterButton.setDisabledIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/config.png"))); // NOI18N
        parameterButton.setDisabledSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/config.png"))); // NOI18N
        parameterButton.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        parameterButton.setIconTextGap(5);
        parameterButton.setMaximumSize(new java.awt.Dimension(112, 112));
        parameterButton.setMinimumSize(new java.awt.Dimension(112, 112));
        parameterButton.setPreferredSize(new java.awt.Dimension(112, 112));
        parameterButton.setPressedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/config.png"))); // NOI18N
        parameterButton.setRequestFocusEnabled(false);
        parameterButton.setRolloverEnabled(true);
        parameterButton.setRolloverIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/config_over.png"))); // NOI18N
        parameterButton.setRolloverSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/config.png"))); // NOI18N
        parameterButton.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/config.png"))); // NOI18N
        parameterButton.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        upperButtonsPanel.add(parameterButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(8, 128, -1, -1));

        rubisButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/rubis_def.png"))); // NOI18N
        rubisButton.setSelected(true);
        rubisButton.setText("RUBIS");
        rubisButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
        rubisButton.setBorderPainted(false);
        rubisButton.setContentAreaFilled(false);
        rubisButton.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
        rubisButton.setDisabledIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/rubis.png"))); // NOI18N
        rubisButton.setDisabledSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/rubis.png"))); // NOI18N
        rubisButton.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        rubisButton.setIconTextGap(5);
        rubisButton.setMaximumSize(new java.awt.Dimension(112, 112));
        rubisButton.setMinimumSize(new java.awt.Dimension(112, 112));
        rubisButton.setPreferredSize(new java.awt.Dimension(112, 112));
        rubisButton.setPressedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/rubis.png"))); // NOI18N
        rubisButton.setRequestFocusEnabled(false);
        rubisButton.setRolloverEnabled(true);
        rubisButton.setRolloverIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/rubis_over.png"))); // NOI18N
        rubisButton.setRolloverSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/rubis.png"))); // NOI18N
        rubisButton.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/rubis.png"))); // NOI18N
        rubisButton.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        upperButtonsPanel.add(rubisButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(8, 8, -1, -1));

        helpButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/help_def.png"))); // NOI18N
        helpButton.setText("Aide");
        helpButton.setActionCommand("HELP");
        helpButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
        helpButton.setBorderPainted(false);
        helpButton.setContentAreaFilled(false);
        helpButton.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
        helpButton.setDisabledIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/help.png"))); // NOI18N
        helpButton.setDisabledSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/help.png"))); // NOI18N
        helpButton.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        helpButton.setIconTextGap(5);
        helpButton.setMaximumSize(new java.awt.Dimension(112, 112));
        helpButton.setMinimumSize(new java.awt.Dimension(112, 112));
        helpButton.setPreferredSize(new java.awt.Dimension(112, 112));
        helpButton.setPressedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/help.png"))); // NOI18N
        helpButton.setRequestFocusEnabled(false);
        helpButton.setRolloverEnabled(true);
        helpButton.setRolloverIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/help_over.png"))); // NOI18N
        helpButton.setRolloverSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/help.png"))); // NOI18N
        helpButton.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/smurf/view/help.png"))); // NOI18N
        helpButton.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        upperButtonsPanel.add(helpButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(8, 248, -1, -1));

        add(upperButtonsPanel, java.awt.BorderLayout.SOUTH);

        logoPanel.setMaximumSize(new java.awt.Dimension(128, 128));
        logoPanel.setMinimumSize(new java.awt.Dimension(128, 128));
        logoPanel.setPreferredSize(new java.awt.Dimension(128, 128));
        add(logoPanel, java.awt.BorderLayout.NORTH);
    }// </editor-fold>//GEN-END:initComponents

    // Variables declaration - do not modify//GEN-BEGIN:variables
    public javax.swing.JToggleButton helpButton;
    private javax.swing.JPanel logoPanel;
    public javax.swing.JToggleButton parameterButton;
    public javax.swing.JToggleButton rubisButton;
    private javax.swing.JPanel upperButtonsPanel;
    // End of variables declaration//GEN-END:variables
}
